package com.demo.personalaccountingbackend.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.demo.personalaccountingbackend.dto.ApiResponse;
import com.demo.personalaccountingbackend.dto.RecordRequest;
import com.demo.personalaccountingbackend.entity.AccountRecord;

import java.time.LocalDate;

/**
 * 类描述信息
 *
 * @author zgx
 * @version 1.0
 * @date 2025/10/15 11:43
 */

public interface RecordService extends IService<AccountRecord> {

    ApiResponse getRecords(Long userId, LocalDate startDate, LocalDate endDate, Integer type);

    ApiResponse getRecordDetail(Long id, Long userId);

    ApiResponse addRecord(RecordRequest recordRequest, Long userId);

    ApiResponse updateRecord(Long id, RecordRequest recordRequest, Long userId);

    ApiResponse deleteRecord(Long id, Long userId);

    ApiResponse getStatistics(Long userId, LocalDate startDate, LocalDate endDate);

    ApiResponse getMonthlyStatistics(Long userId, Integer year, Integer month);
}
